home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-08-10 | 7.6 KB | 199 lines | [TEXT/MPS ] |
- (*
- File: ImageCodec.mod
-
- Contains: QuickTime Interfaces.
-
- Version: Technology: QuickTime 2.0
- Package: Universal Interfaces 2.0 in “MPW Latest” on ETO #17
-
- Copyright: © 1984-1995 by Apple Computer, Inc.
- All rights reserved.
-
- Bugs?: If you find a problem with this file, use the Apple Bug Reporter
- stack. Include the file and version information (from above)
- in the problem description and send to:
- Internet: apple.bugs.applelink.apple.com
- AppleLink: APPLE.BUGS
-
- *)
-
- (*$TAGS-*)
- (*$CALLING PASCAL*)
- MODULE ImageCodec;
-
- IMPORT SYSTEM, Types, Quickdraw, Dialogs, ImageCompression, Components;
-
- (* $PUSH*)
- (* $ALIGN MAC68K*)
- (* $LibExport+*)
-
- CONST
- codecGetCodecInfo* = $00;
- codecGetCompressionTime* = $01;
- codecGetMaxCompressionSize* = $02;
- codecPreCompress* = $03;
- codecBandCompress* = $04;
- codecPreDecompress* = $05;
- codecBandDecompress* = $06;
- codecCDSequenceBusy* = $07;
- codecGetCompressedImageSize* = $08;
- codecGetSimilarity* = $09;
- codecTrimImage* = $0A;
- codecRequestSettings* = $0B;
- codecGetSettings* = $0C;
- codecSetSettings* = $0D;
- codecCDSequenceFlush* = $0E;
- codecSetTimeCode* = $0F;
-
- codecCanScale* = ASH(1,0);
- codecCanMask* = ASH(1,1);
- codecCanMatte* = ASH(1,2);
- codecCanTransform* = ASH(1,3);
- codecCanTransferMode* = ASH(1,4);
- codecCanCopyPrev* = ASH(1,5);
- codecCanSpool* = ASH(1,6);
- codecCanClipVertical* = ASH(1,7);
- codecCanClipRectangular* = ASH(1,8);
- codecCanRemapColor* = ASH(1,9);
- codecCanFastDither* = ASH(1,10);
- codecCanSrcExtract* = ASH(1,11);
- codecCanCopyPrevComp* = ASH(1,12);
- codecCanAsync* = ASH(1,13);
- codecCanMakeMask* = ASH(1,14);
- codecCanShift* = ASH(1,15);
- codecCanAsyncWhen* = ASH(1,16);
- codecCanShieldCursor* = ASH(1,17);
- codecCanManagePrevBuffer* = ASH(1,18);
-
-
- TYPE
- CodecCapabilities* = RECORD
- flags*: LONGINT;
- wantedPixelSize*: INTEGER;
- extendWidth*: INTEGER;
- extendHeight*: INTEGER;
- bandMin*: INTEGER;
- bandInc*: INTEGER;
- pad*: INTEGER;
- time*: LONGINT;
- END;
-
-
- CONST
- codecConditionFirstBand* = ASH(1,0);
- codecConditionLastBand* = ASH(1,1);
- codecConditionFirstFrame* = ASH(1,2);
- codecConditionNewDepth* = ASH(1,3);
- codecConditionNewTransform* = ASH(1,4);
- codecConditionNewSrcRect* = ASH(1,5);
- codecConditionNewMask* = ASH(1,6);
- codecConditionNewMatte* = ASH(1,7);
- codecConditionNewTransferMode* = ASH(1,8);
- codecConditionNewClut* = ASH(1,9);
- codecConditionNewAccuracy* = ASH(1,10);
- codecConditionNewDestination* = ASH(1,11);
- codecConditionFirstScreen* = ASH(1,12);
- codecConditionDoCursor* = ASH(1,13);
- codecConditionCatchUpDiff* = ASH(1,14);
- codecConditionCodecChangedMask* = ASH(1,31);
-
- codecInfoResourceType* = LONG("cdci");
- codecInterfaceVersion* = 2;
-
-
- TYPE
- CodecCompressParams* = RECORD
- sequenceID*: ImageCompression.ImageSequence;
- imageDescription*: ImageCompression.ImageDescriptionHandle;
- data*: Types.Ptr;
- bufferSize*: LONGINT;
- frameNumber*: LONGINT;
- startLine*: LONGINT;
- stopLine*: LONGINT;
- conditionFlags*: LONGINT;
- callerFlags*: ImageCompression.CodecFlags;
- capabilities*: POINTER TO CodecCapabilities;
- progressProcRecord*: ImageCompression.ICMProgressProcRecord;
- completionProcRecord*: ImageCompression.ICMCompletionProcRecord;
- flushProcRecord*: ImageCompression.ICMFlushProcRecord;
- srcPixMap*: Quickdraw.PixMap;
- prevPixMap*: Quickdraw.PixMap;
- spatialQuality*: ImageCompression.CodecQ;
- temporalQuality*: ImageCompression.CodecQ;
- similarity*: Types.Fixed;
- dataRateParams*: ImageCompression.DataRateParamsPtr;
- reserved*: LONGINT;
- END;
-
- CodecDecompressParams* = RECORD
- sequenceID*: ImageCompression.ImageSequence;
- imageDescription*: ImageCompression.ImageDescriptionHandle;
- data*: Types.Ptr;
- bufferSize*: LONGINT;
- frameNumber*: LONGINT;
- startLine*: LONGINT;
- stopLine*: LONGINT;
- conditionFlags*: LONGINT;
- callerFlags*: ImageCompression.CodecFlags;
- capabilities*: POINTER TO CodecCapabilities;
- progressProcRecord*: ImageCompression.ICMProgressProcRecord;
- completionProcRecord*: ImageCompression.ICMCompletionProcRecord;
- dataProcRecord*: ImageCompression.ICMDataProcRecord;
- port*: Quickdraw.CGrafPtr;
- dstPixMap*: Quickdraw.PixMap;
- maskBits*: Quickdraw.BitMapPtr;
- mattePixMap*: Quickdraw.PixMapPtr;
- srcRect*: Types.Rect;
- matrix*: POINTER TO ImageCompression.MatrixRecord;
- accuracy*: ImageCompression.CodecQ;
- transferMode*: INTEGER;
- frameTime*: ImageCompression.ICMFrameTimePtr;
- reserved*: ARRAY 1 (*ΔΔ[0..0]ΔΔ*) OF LONGINT;
- matrixFlags*: Types.SInt8;
- matrixType*: Types.SInt8;
- dstRect*: Types.Rect;
- END;
-
-
- CONST
- matrixFlagScale2x* = ASH(1,7);
-
-
- PROCEDURE CDGetCodecInfo*(storage: Types.Handle; VAR info: ImageCompression.CodecInfo): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDGetCompressionTime*(storage: Types.Handle; src: Quickdraw.PixMapHandle; (*CONST*)VAR srcRect: Types.Rect; depth: INTEGER; VAR spatialQuality: ImageCompression.CodecQ; VAR temporalQuality: ImageCompression.CodecQ; VAR time: LONGINT): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDGetMaxCompressionSize*(storage: Types.Handle; src: Quickdraw.PixMapHandle; (*CONST*)VAR srcRect: Types.Rect; depth: INTEGER; quality: ImageCompression.CodecQ; VAR size: LONGINT): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDPreCompress*(storage: Types.Handle; VAR params: CodecCompressParams): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDBandCompress*(storage: Types.Handle; VAR params: CodecCompressParams): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDPreDecompress*(storage: Types.Handle; VAR params: CodecDecompressParams): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDBandDecompress*(storage: Types.Handle; VAR params: CodecDecompressParams): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDCodecBusy*(storage: Types.Handle; seq: ImageCompression.ImageSequence): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDGetCompressedImageSize*(storage: Types.Handle; desc: ImageCompression.ImageDescriptionHandle; data: Types.Ptr; bufferSize: LONGINT; dataProc: ImageCompression.ICMDataProcRecordPtr; VAR dataSize: LONGINT): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDGetSimilarity*(storage: Types.Handle; src: Quickdraw.PixMapHandle; (*CONST*)VAR srcRect: Types.Rect; desc: ImageCompression.ImageDescriptionHandle; data: Types.Ptr; VAR similarity: Types.Fixed): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDTrimImage*(storage: Types.Handle; Desc: ImageCompression.ImageDescriptionHandle; inData: Types.Ptr; inBufferSize: LONGINT; dataProc: ImageCompression.ICMDataProcRecordPtr; outData: Types.Ptr; outBufferSize: LONGINT; flushProc: ImageCompression.ICMFlushProcRecordPtr; VAR trimRect: Types.Rect; progressProc: ImageCompression.ICMProgressProcRecordPtr): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDRequestSettings*(storage: Types.Handle; settings: Types.Handle; VAR rp: Types.Rect; filterProc: Dialogs.ModalFilterUPP): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDGetSettings*(storage: Types.Handle; settings: Types.Handle): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDSetSettings*(storage: Types.Handle; settings: Types.Handle): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDCodecFlush*(storage: Types.Handle): Components.ComponentResult;
- EXTERNAL PASCAL;
- PROCEDURE CDCodecSetTimeCode*(storage: Types.Handle; timeCodeFormat: (*ΔΔUNIVΔΔ*) Types.Ptr; timeCodeTime: (*ΔΔUNIVΔΔ*) Types.Ptr): Components.ComponentResult;
- EXTERNAL PASCAL;
-
- (* $ALIGN RESET*)
- (* $POP*)
-
- END ImageCodec.
-